package Competition;

/**
 * @BelongsProject: SeniorArchitect-LeetCode
 * @BelongsPackage: Competition
 * @Author: zhuangxiaoyan
 * @CreateTime: 2023-11-05  10:42
 * @Description: TODO
 * @Version: 1.0
 */
public class 找到冠军II {

    public int findChampion(int n, int[][] edges) {
        // 统计的就是这个节点入度为0的元素 如果有两个那就返回-1 如果是一个那就当前的值
        boolean[] weak = new boolean[n];
        // 初始为true
        for (int[] e : edges) {
            weak[e[1]] = true;
        }
        // 开始遍历判断是否有两个false
        int ans = -1;
        for (int i = 0; i < n; i++) {
            if (!weak[i]) {// 统计入度
                // 第一次为fasle
                if (ans != -1) {
                    return -1;
                }
                ans = i;
            }
        }
        return ans;
    }
}
